An Application Program Interface (API) is a programming language format used by an application program to communicate with an operating system or other control programs such as a database management system (DBMS) or communications protocol. An API may include a library of components such as routines, protocols, and/or tools for building software application or obtaining information. The components may be software functions and processes such as executable code or scripts. In some circumstances, the APIs may be exposed over a network such as in a web page or desktop application that access APIs over the network.
APIs may allow developers to create application software which may communicate directly with a particular operating system or computer platform by integrating functions from the operation system's API library into the application software.
The subject matter claimed herein is not limited to embodiments that solve any disadvantages or that operate only in environments such as those described above. Rather, this background is only provided to illustrate one example technology area where some embodiments described herein may be practiced.